#include "gtest/gtest.h"
#include "Carte.h"
#include "ColonneCartes.h"
class CarteTesteur: public ::testing::Test {
public:
	Carte carte;
};

TEST_F(CarteTesteur, constructeursVideOK)
{
	EXPECT_EQ(false, carte.estVisible());
	EXPECT_EQ(Carte::COEUR, carte.reqSorte());
	EXPECT_EQ(Carte::AS, carte.reqValeur());
}

TEST_F(CarteTesteur, asgValeur)
{
	carte.asgValeur(Carte::ROI);
	EXPECT_EQ(Carte::ROI, carte.reqValeur());

	carte.asgValeur(Carte::REINE);
	EXPECT_EQ(Carte::REINE, carte.reqValeur());
}

TEST_F(CarteTesteur, asgSorte)
{
	carte.asgSorte(Carte::PIQUE);
	EXPECT_EQ(Carte::PIQUE, carte.reqSorte());

	carte.asgSorte(Carte::TREFLE);
	EXPECT_EQ(Carte::TREFLE, carte.reqSorte());
}

TEST_F(CarteTesteur, asgVisible)
{
	carte.asgVisible(true);
	EXPECT_EQ(true, carte.estVisible());

	carte.asgVisible(false);
	EXPECT_EQ(false, carte.estVisible());
}

TEST_F(CarteTesteur, copier)
{
	carte.asgVisible(true);
	carte.asgValeur(Carte::VALET);
	carte.asgSorte(Carte::CARREAU);

	Carte carte1 = carte;

	EXPECT_EQ(true, carte1.estVisible());
	EXPECT_EQ(Carte::VALET, carte1.reqValeur());
	EXPECT_EQ(Carte::CARREAU, carte1.reqSorte());
}


